package main

import "errors"

const (
	failstate = 11
	succstate = 10
	initstate = 0

	doorprice = 50
	price     = 2
	exp       = 5
	beatexp   = 1
	// dragonAttck = 2333

	errst = "不知道你在干些什么,但是看起来很像搞渗透，反正失去了同步"
	s0f0  = "蒙达鲁克硫斯伯古比奇巴勒城门卫"
	s0c0  = "站住！进门收钱！一人50元，童叟无欺！不进的走开，要进的速速报上姓名！"
	s0p0  = "我是达拉崩吧斑得贝迪卜多比鲁翁，我从千里之外，前来帮助国王救回公主。"
	s0p1  = "我是宇宙无敌帅炸裂二狗蛋王小二，我来嘲笑国王和他被恶龙捉走的心爱的公主。"
	s0a0  = "达拉崩吧斑得贝迪卜多比鲁翁"
	s0a1  = "宇宙无敌帅炸裂二狗蛋王小二"

	s1f1 = "国王"
	s1c1 = "愁啊，愁啊！爱女米娅莫拉苏娜丹妮谢莉红竟被那恶龙带走了。"
	s1f2 = "国王"
	s1c2 = "若是有哪位勇士能够打败恶龙，大大滴有赏赐"
	s1p0 = "我达拉崩吧斑得贝迪卜多比鲁翁，愿意跨过山与大海，去会会那恶龙昆图库塔卡提考特苏瓦西拉松。"
	s1p1 = "我达拉崩吧斑得贝迪卜多比鲁翁，十二丧母，十六丧父亲，如今肥宅一个，若能救下公主，还请国王将公主嫁给我。"
	s1a0 = "好！！若你成功救得公主，我赐你黄金万两。"
	s1a1 = "大胆！拖下去斩了！"

	s2f0 = "蒙达鲁克硫斯伯古比奇巴勒城门卫"
	s2c0 = "大胆刁民，竟敢在蒙达鲁克硫斯伯古比奇巴勒城门前撒野！让我试试你的身手，若是倒在我布拉多尔次拉西德乐的枪下，也算是你的荣幸！看招"

	s3f0 = "旁白"
	s3c0 = "接下来，你想去哪里呢？"
	s3a0 = "料理大市场"
	s3a1 = "打怪升级"
	s3a2 = "去恶龙洞穴"

	s4f0  = "隔壁王大妈"
	s4c0  = "走过路过不要错过，这里有鲜美香脆可口甘甜现炸童子鸡，有效提升攻击力，现在只要两元钱，两块钱，你买不了吃亏，买不了上当。这位客官，你要来几只啊？"
	s4a0  = "0只"
	s4a1  = "1只"
	s4a2  = "2只"
	s4a3  = "3只"
	s4a4  = "4只"
	s4a5  = "5只"
	s4a6  = "6只"
	s4a7  = "7只"
	s4a8  = "8只"
	s4a9  = "9只"
	s4a10 = "10只"

	s4f1 = "旁白"
	s4c1 = "你感觉自己浑身充满了干劲"
	s4c2 = "你一穷二白，付不起那么多钱"

	s5f1 = "旁白"
	s5c1 = "由于你的赶尽杀绝，附近已经没有小怪兽了,你也当地动物保护组织拘留了。"

	s6f0 = "巨龙昆图库塔卡提考特苏瓦西拉松"
	s6c0 = "我是恶龙昆图库塔卡提考特苏瓦西拉松"
	s6a0 = "你是昆图库塔卡提考特苏瓦西拉松？"
	s6a1 = "你是昆特牌提琴 烤蛋挞 苏打 马拉松？"

	s6c1  = "我是恶龙昆图库塔卡提考特苏瓦西拉松!我的攻击力可是"
	s6c11 = "，看招"

	s6f1 = "旁白"
	s6c2 = "砰砰砰！叭叭叭！恭喜你，战胜了巨龙昆图库塔卡提考特苏瓦西拉松！"
	s6c3 = "啊~~~你被巨龙击败了！"

	s7f0 = "国王"
	s7c0 = "啊！我的勇士达拉崩吧斑得贝迪卜多比鲁翁，你救了我的公主米娅莫拉苏娜丹妮谢莉红！你想要什么奖励？"
	s7a0 = "我一穷二白，想要黄金万两。"
	s7a1 = "公主米娅莫拉苏娜丹妮谢莉红貌美如花，我想要去她为妻。"
	s7a2 = "flag"
	s7c1 = "好！成全你！"
)

var stateTrans [][]int

func stateTransInit() {
	stateTrans = make([][]int, 11)
	stateTrans[0] = []int{1, 2}
	stateTrans[1] = []int{3, 11}
	stateTrans[2] = []int{11}
	stateTrans[3] = []int{4, 5, 6}
}

func GetStateTrans(from, opt int) (int,error) {
	if from < 0 || from >= len(stateTrans) {
		return failstate,errors.New("out of index")
	}
	if opt < 0 || opt >= len(stateTrans[from]) {
		return failstate,errors.New("out of index")
	}
	return stateTrans[from][opt],nil
}
